import java.util.ArrayList;
import java.util.Arrays;
import br.com.TecnicasOtimizacao.base.CodeBasics;
import br.com.TecnicasOtimizacao.base.PQAProblem;
import br.com.TecnicasOtimizacao.heuristics.Grasp;


public class Main {

	public static void main(String[] args) {
		
		PQAProblem pqa = new PQAProblem();
		CodeBasics codebasicsb = new CodeBasics();
		
		/**
		 * Caminhos dos arquivos 
		 */
		String caminhoArquivoInstancia = "C:\\Users\\lrml\\Desktop\\nug12.txt";
		String caminhoArquivoPermutacao = "C:\\Users\\lrml\\Desktop\\nug12.sln.txt";
						
		/**
		 * Imprimir as Matrizes
		 */
		ArrayList<Double[][]> matrizes = new ArrayList<Double[][]>();
		Double[][] matrizF; 
		Double[][] matrizD; 
		
		matrizes = pqa.lerInstanciaMatrizes(caminhoArquivoInstancia);
		matrizF = matrizes.get(0);
		matrizD = matrizes.get(1);
		
		//pqa.imprimirMatrizes(matrizF, matrizD);
		
		/**
		 * Retornar valor do Custo
		 */
		
		Integer[] permutacao = pqa.lerPermutacao(caminhoArquivoPermutacao);
		Double custoTotal = 0.0;
		//custoTotal = pqa.calcularCusto(matrizF, matrizD,permutacao);
		//System.out.println(custoTotal);
		
		System.out.println(codebasicsb.numeroArestas(matrizF.length)); 
		
		
		/**
		 * Objeto GRASP
		 */
		
		Grasp grasp = new Grasp();
		
	}

}
